package com.yngrp.service.wo;

import java.util.List;

import org.jeecgframework.core.common.hibernate.qbc.CriteriaQuery;
import org.jeecgframework.core.common.service.CommonService;

import com.yngrp.entity.Group2CustomerNo;
import com.yngrp.entity.GroupInfo;
import com.yngrp.entity.TaskElecQuery;
import com.yngrp.entity.TaskGroupDetail;

/**
 *  @Description: 集团电费查询业务接口
 *  @author  SLH
 *  @date  20160810
 */

public interface GroupPowerRateService extends CommonService{
	
	/**
	 * 新增集团
	 * @param gi
	 */
	public void saveGroup(GroupInfo gi);
	
	/**
	 * 新增集团户号
	 * @param gc
	 */
	public void saveCustomerNo(Group2CustomerNo gc);
	
	/**
	 * 删除查询任务
	 * @param teq
	 */
	public void deleteQueryTask(TaskElecQuery teq);
	
	/**
	 * 删除查询任务集团
	 * @param tgd
	 */
	public void deleteTaskGroup(TaskGroupDetail tgd);
	
	/**
	 * 完成任务
	 * @param teq
	 */
	public void finishTask(TaskElecQuery teq);
	
	/**
	 * 通过cq获取全部实体
	 * 
	 * @param <T>
	 * @param cq
	 * @return
	 */
	public <T> List<T> getListByCriteriaQuery(final CriteriaQuery cq,
			Boolean ispage);
	
	/**
	 * 生成查询任务
	 * @param queryStartDate  开始日期
	 * @param queryEndDate  结束日期
	 * @param createMode  生成方式
	 */
	public String createQueryTask(String queryStartDate,String queryEndDay,String createMode);
	
	/**
	 * 生成查询任务
	 * @param queryDate  查询日期
	 * @param createMode  生成方式
	 */
	public String createQueryTask(String queryDate,String createMode);
	
	/**
	 * 根据字典编码获取字典项描述
	 * @param typeGroupCode
	 * @param woTypeCode
	 * @return
	 */
	public String getCodeByName(String typeGroupCode,String woTypeName);
	
	
	/**
	 * 手动生成查询任务
	 * @param queryDate  查询日期
	 */
	public boolean checkQueryTask(String queryDate);
	
	
}
